﻿using Estsh.Core.Base;
using Estsh.Core.Model.Extend;
using Estsh.Core.Models;
using Estsh.Core.Model.Extend.Models;
using Estsh.Core.Repositories;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Estsh.Core.Wms.IRepositories
{
    public interface IStockRepository : IBaseRepository<SysStock_Extend>
    {
        /// <summary>
        /// 获取箱条码信息
        /// </summary>
        /// <param name="cartonNo"></param>
        /// <returns></returns>
        public SysStock_Extend GetCartonInfo(string cartonNo);

        /// <summary>
        /// 获取库位对应的库存信息
        /// </summary>
        /// <param name="locateName"></param>
        /// <returns></returns>
        public List<SysStock> GetLocateStockInfo(string locateName);

        /// <summary>
        /// 根据库位获取条码信息
        /// </summary>
        /// <param name="locateName"></param>
        /// <returns></returns>
        public List<SysStock> GetStockQtyByLocate(string locateName);
		/// <summary>
		/// 获取库存数量（根据零件+库区）
		/// </summary>
		/// <param name="partId"></param>
		/// <param name="zoneId"></param>
		/// <returns></returns>
		public decimal GetStockQty(int partId, int zoneId);

    }
}
